﻿using System;
using System.Collections.Generic;

namespace MainPersistenceNamespace.Fake
{
    /// <summary>
    /// メモリを表します。
    /// </summary>
    [Serializable]
    public sealed class Memory
    {
        /// <summary>
        /// ID と紐付けられた<see cref="Memory">メモリ</see>の一覧を取得します。
        /// </summary>
        public static readonly Dictionary<string, Memory> Memories = new Dictionary<string, Memory>();


        /// <summary>
        /// <see cref="Memory"/> クラスの新しいインスタンスを初期化します。
        /// </summary>
        /// <param name="id">ID。</param>
        public Memory(string id)
        {
            _id = id;
        }


        /// <summary>
        /// ID を取得します。
        /// </summary>
        private readonly string _id;

        /// <summary>
        /// メモリ上のコレクションを取得または設定 (private) します。
        /// </summary>
        public List<object> Entities
        {
            get;
            private set;
        }
    }
}
